package br.com.atenas.sigop.servico;

import java.sql.Connection;
import java.util.Collection;
import br.com.atenas.sigop.dao.RevistaDAO;
import br.com.atenas.sigop.servico.Service;
import br.com.atenas.sigop.dao.ConnectionFactory;
import br.com.atenas.sigop.dto.RevistaDTO;

public class RevistaService extends Service{

	public void gravarRevista(RevistaDTO revista) throws Exception {
		Connection conn = null;
		try{
			conn = ConnectionFactory.getConnection();
			RevistaDAO dao = new RevistaDAO();
			dao.gravar(revista,conn);
		}catch(Exception e){
			throw new RuntimeException(e);
		}finally{
			fecharConexao(conn);
		}
	}
		
	public Collection<RevistaDTO> pesquisarRevista(RevistaDTO revista) throws Exception{
		Connection conn = null;
		try{
			conn = ConnectionFactory.getConnection();
			RevistaDAO dao = new RevistaDAO();
			return dao.pesquisar(revista, conn);
		}catch(Exception e){
			throw new RuntimeException(e);
		}finally{
			fecharConexao(conn);
		}
	}

	public void alterarRevista(RevistaDTO revista) throws Exception {
		Connection conn = null;
		try{
			conn = ConnectionFactory.getConnection();
			RevistaDAO dao = new RevistaDAO();
			dao.alterar(revista,conn);
			conn.commit();
		}catch(Exception e){
			throw new RuntimeException(e);
		}finally{
			fecharConexao(conn);
		}
	}

	public void excluirRevista(RevistaDTO revista) throws Exception {
		Connection conn = null;
		try{
			conn = ConnectionFactory.getConnection();
			RevistaDAO dao = new RevistaDAO();
			dao.excluir(revista,conn);
			conn.commit();
		}catch(Exception e){
			throw new RuntimeException(e);
		}finally{
			fecharConexao(conn);
		}
	}
}